312711
@@ -1552,6 +1552,16 @@
private boolean isBigTableOnlyResults(MapJoinDesc desc) {
     return vectorOp;
   }
 
+  private boolean onExpressionHasNullSafes(MapJoinDesc desc) {
+    boolean[] nullSafes = desc.getNullSafes();
+    for (boolean nullSafe : nullSafes) {
+      if (nullSafe) {
+        return true;
+      }
+    }
+    return false;
+  }
+
   private boolean canSpecializeMapJoin(Operator<? extends OperatorDesc> op, MapJoinDesc desc,
       boolean isTez) {
 
@@ -1562,7 +1572,7 @@
private boolean canSpecializeMapJoin(Operator<? extends OperatorDesc> op, MapJoi
             HiveConf.ConfVars.HIVE_VECTORIZATION_MAPJOIN_NATIVE_ENABLED)) {
 
       // Currently, only under Tez and non-N-way joins.
-      if (isTez && desc.getConds().length == 1) {
+      if (isTez && desc.getConds().length == 1 && !onExpressionHasNullSafes(desc)) {
 
         // Ok, all basic restrictions satisfied so far...
         specialize = true;
